1 ⭐ About Game of Thrones

Game of Thrones is an American fantasy drama television series created by David Benioff and D. B. Weiss for HBO. It is an adaptation of A Song of Ice and Fire, a series of fantasy novels by George R. R. Martin, the first of which is A Game of Thrones. It premiered on HBO in the United States on April 17, 2011, and concluded on May 19, 2019, with 73 episodes broadcast over eight seasons.

In this project we will utilize EDA to explore the Game of thrones dataset for:

  1. Which season has the highest ratings?

  2. Top 5 most viewed

  3. Top 5 people who work with the most

Game of Thrones Dataset

colnames(Game_of_Thrones) <- c("season","no.ep","no.overall","title","time","directed","written","air_date","viewer","music", "cinematography", "editing", "imdb", "rotten", "metacritic", "ordered", "duration", "adepted", "synopsis")
Game_of_Thrones %>%
  select(season, no.ep, title, directed, written, viewer, music, cinematography, editing, imdb, rotten, metacritic) %>%
  datatable()

1.1 Game of Thrones rating

We will see Which season has the highest ratings compare 3 web

rating_of_tree <- Game_of_Thrones %>%
 select(imdb,
        metacritic,
        rotten) %>%
  summarise(mean_imdb = round(mean(imdb),2), 
            mean_metacritic = round(mean(metacritic),2),
            mean_rottrn = round(mean(rotten)/10,2))

colnames(rating_of_tree) <- c("IMDB","Metacritic","Rotten Tomatoes")
rating_of_tree
##   IMDB Metacritic Rotten Tomatoes
## 1 8.74       7.82             9.2
rating_of_tree %>%
  gather() %>%
  ggplot(aes(key,
             value,
             fill=key,
             label = gather(rating_of_tree)$key)) +
  geom_col()+
  geom_text(size=5,
            position = position_dodge(0.9), 
            vjust=0)+
  theme_minimal()+
  theme(axis.text.x = element_blank(),
        legend.position = "none")+
  xlab("")+
  ylab("")+
  scale_fill_manual(values = c("#FFD700","#191970","#FF6347"))

1.1.1 IMDB ratings

in imdb website we will see season 4 have most rating

imdb_rating <- Game_of_Thrones %>%
  select(season,
         imdb) %>%
  group_by(season) %>%
  summarise(mean_imdb = round(mean(imdb),2))

imdb_rating %>%
  pivot_longer(-season, 
               names_to = "variable", 
               values_to = "value") %>%
  ggplot(aes(season, value))+
  geom_point(size=5, colour = "#FFD700")+
  geom_line(alpha=0.2,size=2,colour = "#FFD700")+
  theme_minimal()+
  theme(axis.text.x = element_text(angle = 0, hjust = 1, size = rel(1.5)),
        axis.text.y = element_blank(),
        legend.position = "none",
        plot.title = element_text(hjust = 0.5, size = rel(2)))+
  scale_x_continuous(breaks = 1:8)+
  ggtitle("IMDB")+
  xlab("")+
  ylab("")

imdb_rating %>%
  arrange(desc(mean_imdb))
## # A tibble: 8 × 2
##   season mean_imdb
##    <int>     <dbl>
## 1      4      9.23
## 2      7      9.03
## 3      6      8.99
## 4      1      8.97
## 5      3      8.93
## 6      2      8.81
## 7      5      8.71
## 8      8      6.42

1.1.2 Metacritic ratings

in Metacritic website we will see season 1 have most rating

rotten_rating <- Game_of_Thrones %>%
  select(season,
         metacritic) %>%
  group_by(season) %>%
  summarise(mean_metacritic = round(mean(metacritic),2))

rotten_rating %>%
  pivot_longer(-season, 
               names_to = "variable", 
               values_to = "value") %>%
  ggplot(aes(season, value))+
  geom_point(size=5, colour = "#191970")+
  geom_line(alpha=0.2,size=2,colour = "#191970")+
  theme_minimal()+
  theme(axis.text.x = element_text(angle = 0, hjust = 1, size = rel(1.5)),
        axis.text.y = element_blank(),
        legend.position = "none",
        plot.title = element_text(hjust = 0.5, size = rel(2)))+
  scale_x_continuous(breaks = 1:8)+
  ggtitle("Metacritic")+
  xlab("")+
  ylab("")

rotten_rating %>%
  arrange(desc(mean_metacritic))
## # A tibble: 8 × 2
##   season mean_metacritic
##    <int>           <dbl>
## 1      1            9.12
## 2      4            8.95
## 3      3            8.75
## 4      2            8.7 
## 5      5            8.3 
## 6      6            6.7 
## 7      7            5.86
## 8      8            4.08

1.1.3 Rotten Tomato ratings

in Rotten Tomato website we will see season 1 have most rating

rotten_rating <- Game_of_Thrones %>%
  select(season,
         rotten) %>%
  group_by(season) %>%
  summarise(mean_rotten = round(mean(rotten),2))

rotten_rating %>%
  pivot_longer(-season, 
               names_to = "variable", 
               values_to = "value") %>%
  ggplot(aes(season, value))+
  geom_point(size=5, colour = "#FF6347")+
  geom_line(alpha=0.2,size=2,colour = "#FF6347")+
  theme_minimal()+
  theme(axis.text.x = element_text(angle = 0, hjust = 1, size = rel(1.5)),
        axis.text.y = element_blank(),
        legend.position = "none",
        plot.title = element_text(hjust = 0.5, size = rel(2)))+
  scale_x_continuous(breaks = 1:8)+
  ggtitle("Rotten Tomoto")+
  xlab("")+
  ylab("")

rotten_rating %>%
  arrange(desc(mean_rotten))
## # A tibble: 8 × 2
##   season mean_rotten
##    <int>       <dbl>
## 1      1        97.1
## 2      2        97  
## 3      4        96.7
## 4      3        93.7
## 5      6        92.4
## 6      7        91.9
## 7      5        89.5
## 8      8        67.8

1.2 summarize compare 3 website top rating

IMDB is 4

Metacritic is 1

Rotten Tomoto is 1

season 1 win 2:1

season 1 overiew

Game_of_Thrones %>%
  select(season, no.ep, title, directed, written, viewer, music, cinematography, editing) %>%
  filter(season == 1) %>%
  datatable()
rating_of_season1 <- Game_of_Thrones %>%
  filter(season == 1) %>%
  select(no.ep,
         imdb,
         rotten,
         metacritic) %>%
  group_by(no.ep) %>%
  summarise(mean_imdb = round(mean(imdb),2), 
            mean_rottrn = round(mean(rotten)/10,2),
            mean_metacritic = round(mean(metacritic),2))

rating_of_season1
## # A tibble: 10 × 4
##    no.ep mean_imdb mean_rottrn mean_metacritic
##    <int>     <dbl>       <dbl>           <dbl>
##  1     1       8.9        10               9.1
##  2     2       8.6        10               8.9
##  3     3       8.5         8.1             8.7
##  4     4       8.6        10               9.1
##  5     5       9           9.5             9  
##  6     6       9.1        10               9.2
##  7     7       9.1        10               9.4
##  8     8       8.9         9.5             8.9
##  9     9       9.6        10               9.5
## 10    10       9.4        10               9.4

1.2.1 IMDB ratings

ep 9 is most rating 9.6 score

rating_of_season1 %>%
  select(no.ep, mean_imdb) %>%
  pivot_longer(-no.ep, 
               names_to = "variable", 
               values_to = "value")%>%
  ggplot(aes(no.ep, 
             value, 
             colour= variable))+
  geom_point(size=4, colour = "#FFD700")+
  geom_line(alpha=0.3,size=2, colour = "#FFD700")+
  theme_minimal()+
  labs(title = "Ralationship between rating and episode in season 1",
      x = "episode",
      y= "rating")+
  scale_x_continuous(breaks = 1:10)

1.2.2 Metacritic ratings

ep 9 is most rating 9.5 score

rating_of_season1 %>%
  select(no.ep, mean_metacritic) %>%
  pivot_longer(-no.ep, 
               names_to = "variable", 
               values_to = "value")%>%
  ggplot(aes(no.ep, 
             value, 
             colour= variable))+
  geom_point(size=4, colour = "#191970")+
  geom_line(alpha=0.3,size=2, colour = "#191970")+
  theme_minimal()+
  labs(title = "Ralationship between rating and episode in season 1",
      x = "episode",
      y= "rating")+
  scale_x_continuous(breaks = 1:10)

1.2.3 Rotten Tomato ratings

ep 1,2,4,6,7,9,10 😂 is most rating 100 score

rating_of_season1 %>%
  select(no.ep, mean_rottrn) %>%
  pivot_longer(-no.ep, 
               names_to = "variable", 
               values_to = "value")%>%
  ggplot(aes(no.ep, 
             value, 
             colour= variable))+
  geom_point(size=4, colour = "#FF6347")+
  geom_line(alpha=0.3,size=2, colour = "#FF6347")+
  theme_minimal()+
  labs(title = "Ralationship between rating and episode in season 1",
      x = "episode",
      y= "rating")+
  scale_x_continuous(breaks = 1:10)

Whattttttttt!!!!!!!!!!!

1.3 Who is director and wirttor

In season 1 ep. 9

directed by Alan Taylor

written by David Benioff, D. B. Weiss

cinematography by Alik Sakharov

editing by Frances Parker

Game_of_Thrones %>%
  select(season, no.ep, title, directed, written, viewer, music, cinematography, editing) %>%
  filter(season == 1, no.ep == 9) %>%
  datatable()

2 😎 Top 5 most viewed

We will plot a simple bar plot with No of U.S. Viewers of the Episode in Millions

top_5_viewed <- Game_of_Thrones %>%
  select(1,2,4,9) %>%
  arrange(desc(viewer)) %>%
  head(5)
top_5_viewed %>%
  ggplot(aes(title,
             viewer,
             label = title,
             fill=title))+
  geom_col()+
  geom_text(size=3,
            position = position_dodge(0.9), 
            vjust=0)+
  theme_minimal()+
  labs(title = "Top 5 most viewed people",
      x = "episode",
      y= "view")+
  theme(axis.text.x = element_blank(),
        legend.position = "none")

The Iron Throne WIN!!!

Game_of_Thrones %>%
  filter(title == "The Iron Throne") %>%
  select(synopsis)%>%
  datatable()

2.1 Who is director and wirttor

In season 8 ep. 6 The Iron Throne

directed by David Benioff & D. B. Weiss

written by David Benioff, D. B. Weiss

cinematography by Jonathan Freeman

editing by Katie Weiland

Game_of_Thrones %>%
  select(season, no.ep, title, directed, written, viewer, music, cinematography, editing) %>%
  filter(title == "The Iron Throne") %>%
  datatable()

3 🤩 Top 5 people who work with the most

In Game of Throne dataset we have position director, writtor, cinematographer, editor let see top 5 people who work with the most

3.1 director

diredtors <- Game_of_Thrones %>%
  select(directed) %>%
  group_by(directed) %>%
  count() %>%
  arrange(desc(n)) %>%
  filter(n >= 5) %>%
  head(5)

colnames(diredtors) <- c("directed", "amount")
datatable(diredtors)
diredtors %>%
  ggplot(aes(directed,
             amount, 
             label = diredtors$directed, 
             fill=directed))+
  geom_col()+
  geom_text(size=3,
            position = position_dodge(0.9), 
            vjust=0)+
  theme_minimal()+
  labs(title = "Top 5 directors who have worked with the most",
      x = "director",
      y= "amount")+
  theme(axis.text.x = element_blank(),
        legend.position = "none")

The most directing is David Nutter

let’s see what episode directed by David Nutter

Game_of_Thrones %>%
  select(season, no.ep, title, viewer, directed) %>%
  filter(directed == "David Nutter") %>%
  datatable()

3.2 writtor

writtor <- Game_of_Thrones %>%
  select(written) %>%
  group_by(written) %>%
  count() %>%
  arrange(desc(n)) %>%
  head(5)

colnames(writtor) <- c("writter", "amount")
datatable(writtor)
writtor %>%
  ggplot(aes(writter,
             amount, 
             label = writtor$writter, 
             fill=writter))+
  geom_col()+
  geom_text(size=3,
            position = position_dodge(0.9), 
            vjust=0)+
  theme_minimal()+
  labs(title = "Top 5 writtor who have worked with the most",
      x = "writtor",
      y= "amount")+
  theme(axis.text.x = element_blank(),
        legend.position = "none")

The most writer is David Benioff, D. B. Weiss

let’s see what episode written by David Benioff, D. B. Weiss

Game_of_Thrones %>%
  select(season, no.ep, title, viewer, written) %>%
  filter(written == "David Benioff, D. B. Weiss") %>%
  datatable()

3.3 cinematographer

cinematographer <- Game_of_Thrones %>%
  select(cinematography) %>%
  group_by(cinematography) %>%
  count() %>%
  arrange(desc(n)) %>%
  head(5)

colnames(cinematographer) <- c("cinematography", "amount")
datatable(cinematographer)
cinematographer %>%
  ggplot(aes(cinematography,
             amount, 
             label = cinematographer$cinematography, 
             fill=cinematography))+
  geom_col()+
  geom_text(size=3,
            position = position_dodge(0.9), 
            vjust=0)+
  theme_minimal()+
  labs(title = "Top 5 writtor who have worked with the most",
      x = "writtor",
      y= "amount")+
  theme(axis.text.x = element_blank(),
        legend.position = "none")

The most cinematographer is Anette Haellmigk

let’s see what episode cinematography by Anette Haellmigk

Game_of_Thrones %>%
  select(season, no.ep, title, viewer, cinematography) %>%
  filter(cinematography == "Anette Haellmigk") %>%
  datatable()

3.4 editor

editor <- Game_of_Thrones %>%
  select(editing) %>%
  group_by(editing) %>%
  count() %>%
  arrange(desc(n)) %>%
  head(5)

colnames(editor) <- c("editing", "amount")
datatable(editor)
editor %>%
  ggplot(aes(editing,
             amount, 
             label = editor$editing, 
             fill=editing))+
  geom_col()+
  geom_text(size=3,
            position = position_dodge(0.9), 
            vjust=0)+
  theme_minimal()+
  labs(title = "Top 5 writtor who have worked with the most",
      x = "writtor",
      y= "amount")+
  theme(axis.text.x = element_blank(),
        legend.position = "none")

The most editing is Katie Weiland

let’s see what episodeediting by Katie Weiland

Game_of_Thrones %>%
  select(season, no.ep, title, viewer, editing) %>%
  filter(editing == "Katie Weiland") %>%
  datatable()

4 🚩 Summary

This notebook showed that Game of Throne season 1 ep.9 Baelor is most rating directedAlan Taylor by and writter byDavid Benioff, D. B. Weiss most of viewer is The Iron Throne directed and writer byDavid Benioff & D. B. Weiss Next time when I want to watch cinematic , I will try the cinematic directed and writer by David Benioff, D. B. Weiss

5 🪑 Reference:

[1] https://www.kaggle.com/datasets/iamsouravbanerjee/game-of-thrones-dataset

Thanks for reading !